package com.mdd.admin.validate;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import javax.validation.constraints.*;
import java.math.BigDecimal;
import com.mdd.common.validator.annotation.IDMust;

/**
 * 商机参数
 * @author LikeAdmin
 */
@Data
@ApiModel("商机更新参数")
public class ClientCrmBusinessUpdateValidate implements Serializable {

    private static final long serialVersionUID = 1L;

    @IDMust(message = "id参数必传且需大于0")
    @ApiModelProperty(value = "主键ID")
    private Integer id;

    @NotNull(message = "businessName参数缺失")
    @ApiModelProperty(value = "商机名称")
    private String businessName;

    @NotNull(message = "privateCustomerCustomer参数缺失")
    @ApiModelProperty(value = "对应客户")
    private String privateCustomerCustomer;

    @ApiModelProperty(value = "预计销售金额")
    private BigDecimal estimatedSalesAmount;

    @NotNull(message = "estimatedSigningDate参数缺失")
    @ApiModelProperty(value = "预计签单日期")
    private String estimatedSigningDate;

    @ApiModelProperty(value = "所属部门")
    private String department;

    @ApiModelProperty(value = "签单可能性")
    private String signingPossibility;

    @ApiModelProperty(value = "主归属公司")
    private Integer mainOwningCompanyid;

    @ApiModelProperty(value = "副归属公司")
    private Integer subsidiaryCompanyId;

    @ApiModelProperty(value = "更新于")
    private String updatedOn;

    @ApiModelProperty(value = "商机类型")
    private String businessType;

    @ApiModelProperty(value = "商机获取日期")
    private String businessGetdate;

    @ApiModelProperty(value = "商机来源")
    private String businessSource;

    @ApiModelProperty(value = "预设要点")
    private String defaultPoint;

    @ApiModelProperty(value = "案件类型")
    private String caseType;

    @ApiModelProperty(value = "暂定交底名称")
    private String pauseName;

    @ApiModelProperty(value = "技术要点")
    private String technicalPoints;

    @ApiModelProperty(value = "摘要")
    private String abstractText;

    @ApiModelProperty(value = "商机来源")
    private Integer businessSourceid;

    @ApiModelProperty(value = "案件类型")
    private Integer caseTypeid;

    @ApiModelProperty(value = "业务人员")
    private Integer fieldStaffId;

    @ApiModelProperty(value = "协作人")
    private Integer collaboratorId;

    @ApiModelProperty(value = "备注")
    private String remarks;

    @ApiModelProperty(value = "跟进状态")
    private String followupStatus;

    @ApiModelProperty(value = "下次跟进时间")
    private Integer nextTime;

    @ApiModelProperty(value = "操作人")
    private Integer userId;

}
